perm filename PUZZLE.TIM[TIM,LSP]18 blob
sn#768046 filedate 1984-09-12 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00025 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00003 00002 SAIL
C00005 00003 ELISP/UCILISP
C00006 00004 T/UCILISP
C00007 00005 LM-2
C00008 00006 ∂03-Oct-82 2050 James Bennett <csd.Bennett at SU-SCORE> initial timings
C00011 00007 PUZZLE
C00012 00008 PUZZLE
C00013 00009 NIL
C00015 00010 SCORE Dec 29, 1983 1-based arrays
C00016 00011 InterLisp Vax 780
C00017 00012 PSL-20 3.3
C00018 00013 PSL-Cray 3.2
C00020 00014 PSL-750 3.2
C00021 00015 PSL-780 3.2
C00022 00016 PSL-DN600 3.2
C00023 00017 PSL-DN300 3.2
C00024 00018 PSL-dn160
C00025 00019 PERQ 6/19/84
C00026 00020 DEC Common Lisp
C00027 00021 PSL Numbers 7/31/84
C00028 00022 LMI/Tyson 15-Aug-84 1920
C00029 00023 s-1
C00030 00024 PSL-3081
C00031 00025 3600 Sept 12, 1984
C00032 ENDMK
C⊗;
;;; SAIL
(timit)
success in 2005 trials
Cpu Time = 8.736
Elapsed Time = 15.4666667
Wholine Time = 12.85
GC time = 0.421
Load Average Before = 0.560385704
Load Average After = 0.62576735
NIL
success in 2005 trials
Cpu Time = 8.762
Elapsed Time = 21.0833333
Wholine Time = 12.9333333
GC time = 0.422
Load Average Before = 0.62777853
Load Average After = 0.77028763
NIL
success in 2005 trials
Cpu Time = 8.758
Elapsed Time = 22.3166666
Wholine Time = 13.2333333
GC time = 0.422
Load Average Before = 0.85665059
Load Average After = 0.982417345
NIL
;;; PUZZLE (model B)
success in 2005 trials
Cpu Time = 7.865
Elapsed Time = 14.5666667
Wholine Time = 11.8333334
GC time = 0.0
Load Average Before = 0.63950753
Load Average After = 0.70015371
NIL
;;; ELISP/UCILISP
Elisp: 25.133 sec.
R/UCI Lisp: 75.622 sec.
R/UCI Lisp with NOUUO NIL: 25.840 sec.
;;; T/UCILISP
∂10-May-82 2101 Mabry Tyson <Tyson at SRI-AI> UCI Lisp on Basket Puzzle
Date: 10 May 1982 2055-PDT
From: Mabry Tyson <Tyson at SRI-AI>
Subject: UCI Lisp on Basket Puzzle
To: rpg at SU-AI
Results on the Basket Puzzle Benchmark for UCI-Lisp (version from UTexas-20,
tests run on SRI-AI 2060).
Compiled, slow links: 85.804 seconds (no GC)
Compiled, fast links: 23.966 seconds (no GC)
-------
;;; LM-2
;; 6. PUZZLE
(DEFUN TIME-PUZZLE ()
(TIMING "PUZZLE" (START)))
;; Compiled: 59.0 Seconds
∂03-Oct-82 2050 James Bennett <csd.Bennett at SU-SCORE> initial timings
Date: 3 Oct 1982 2046-PDT
From: James Bennett <csd.Bennett at SU-SCORE>
Subject: initial timings
To: rpg at SU-AI
Stanford-Phone: (415) 497-2225
Home-Phone: (415) 322-2233
Dick,
I got it to work. You are right about Interlisp array indicies
starting at 1 rather than 0. I thought that the ADD1's would unduly
increase the running times but I think that this effect is in the noise
after looking at the following results. First I block compiled the functions,
timed start, and then did the same with the uncompiled versions. As
you can see below, compiling had little effect. I would say that array
access sucks in Interlisp. I suggest that you run the breakdown package
on this function just to see were it is spending its time, jim
NIL
←(TIME (START) 1 0] ; bcompl'd version
success in 2005 trials
0 conses
1481.138 seconds
2782.667 seconds, real time
NIL
←LOAD(PUZZLE]
FILE CREATED 3-Oct-82 13:00:20
PUZZLECOMS
(START redefined)
(DEFINE-ARRAY redefined)
collecting arrays
7820, 10380 free cells
<CSD.BENNETT>PUZZLE..10
←REDO TIME ; expr version
success in 2005 trials
0 conses
1481.692 seconds
2397.734 seconds, real time
NIL
←PL START
CODE : #176777
EXPR : (LAMBDA NIL (& 0) --)
←UNSAVEDEF(START CODE]
CODE
←REDO TIME
success in 2005 trials
0 conses
1479.684 seconds
2426.698 seconds, real time
NIL
←DRIBBLE]
-------
;;; PUZZLE
Common Lisp arrays
D3
Open-compiled, safe, Display-up
Elapsed 14.9
CPU 14.9
Open-compiled, safe, Display-down
Elapsed 14.0
CPU 14.0
Closed-compiled, safe, Display-up
Elapsed 49.3
CPU 49.3
;;; PUZZLE
Common Lisp arrays
D2
Open-compiled, safe, Display-up
Elapsed 121.0
SWAP .252
CPU 121.0
Open-compiled, safe, Display-down
Elapsed 91.0
CPU 91.0
Closed-compiled, safe, Display-up
Elapsed 278.0
CPU 278.0
InterLisp arrays (1-based version)
Elapsed 616.0
SWAP .087
CPU 616.0
PGFLTS 2
D1
1/25/84 with interrupts CMLArrays
Elapsed 50.2
CPU 50.2
GC 0.0
;;; NIL
PUZZLE
Fixnum arithmetic, as always.
Make the following macro definition
(defmacro deftable (name type &rest dimensions)
(let ((tabvar (symbolconc '* name '-table*)))
`(progn 'compile
(defparameter ,tabvar
(make-array (list ,@dimensions))
,.(cond ((eq type 'fixnum) `((fill ,tabvar 0)))
((eq type 'flonum) `((fill ,tabvar 0.0))))
(defmacro ,name (&rest dimensions)
,(cond ((= (length dimensions) 1) ``(sgvref ,',tabvar ,@dimensions))
(t ``(aref ,',tabvar ,@dimensions)))))))
and change calls to ARRAY to DEFTABLE, calls to STORE to SETF.
(Hopefully not causing order-of-evaluation problems.) To really bum
this i could use SGVREF for the one-dimensional cases.
cpu=497.85,elapsed=498.02,pagefaults=4
Presumably this is because 2-dim aref is losing its lunch. I think that
that overshadows the generic reference to the one-dimensional case, so i'm
not going to bother doing that case. (The multi-dimensional generic aref
minisubr has been mostly written, but got bumped down the queue some time
ago so never got debugged nor installed.) A new compiler and some array
declarations would work wonders.
;;; SCORE Dec 29, 1983 1-based arrays
using PUZZLE.IL0[TIM,LSP]
Success in 2005 trials.
0 conses
121.028 seconds
7.926 seconds, garbage collection time
NIL
←
;;; InterLisp Vax 780
PUZZLE:
←(TIME (START))
Success in 2005 trials.
0 conses
123.088 seconds
NIL
←LOAD(PUzzle.v]
compiled on 14-AUG-84 17:34:31
File Created:24-FEB-83 11:26:22
PUZZLECOMS
/lisp/rbates/lisp/dick/PUZZLE.V
←(TIME (START]
Success in 2005 trials.
0 conses
110.288 seconds
NIL
;;; PSL-20 3.3
Puzzle test
Timing performed on DEC-20
23-Mar-84 05:09:07 .
success in 2005 trials
........................................
Cpu (- GC) Time = 15.924 secs
Elapsed Time = 18.0 secs
GC Time = 0.0 secs
Load Average Before = 1.2
Load Average After = 1.2
Average Load Average = 1.2
;;; PSL-Cray 3.2
;;; Times are in milliseconds
14:25:53 001:22.341 Puzzle test
14:26:11 001:26.658 Cpu (- GC) Time = 1007.13500000 secs
14:26:14 001:27.178 Elapsed Time = 0. secs
14:26:18 001:27.699 GC Time = 0. secs
14:26:20 001:28.219 Load Average Before = 0
14:26:36 001:28.739 Load Average After = 0
14:26:40 001:29.260 Average Load Average = 0.
Puzzle test
Timing performed on CRAY
23-apr-84 12:00:00.
success in 2005 trials
........................................
Cpu (- GC) Time = 1008.49500000 secs
Elapsed Time = 0. secs
GC Time = 0. secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.
;;; PSL-750 3.2
Cpu (- GC) Time = 35.938 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.0
;;; PSL-780 3.2
Cpu (- GC) Time = 16.286 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.0
;;; PSL-DN600 3.2
Cpu (- GC) Time = 28.923 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.0
;;; PSL-DN300 3.2
Cpu (- GC) Time = 31.743 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.0
;;; PSL-dn160
Puzzle test
Timing performed on Apollo
today 12:00:00.
success in 2005 trials
........................................
Cpu (- GC) Time = 29.506 secs
Elapsed Time = 0.0 secs
GC Time = 0.0 secs
Load Average Before = 0
Load Average After = 0
Average Load Average = 0.0
;;; PERQ 6/19/84
1812.42 seconds (stopwatch)
7/31/84
Benchmark % of old time Time Machine used
Puzzle 5.74% 104.07 Joe's T2
;;; DEC Common Lisp
*************************************************************************
Name of VAXLisp VAXLisp VAXLisp VAXLisp
application U1.0-20 U1.0-20 U1.0-20 U1.0-20
Benchmark VMS V3.5 VMS V3.5 VMS V3.5 VMS V3.6
730 (No FPA) 750 (No FPA) 780 785 (No FPA)
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Puzzle
array 512.56 231.79 128.92 85.44
list 59.36 23.74 14.25 8.80
;;; PSL Numbers 7/31/84
|KL-10b| 20-60 | 20-60 | 3600 | 20-60 | CRAY | 12Mhz| HP-UX
Benchmark |MACLSP|InterLsp|PSL 3.2| ZetaL|PSL 3.3|PSL3.2| HP200|PSL3.3
--------------------------------------------------------------------------
Puzzle | 7.87| 121.028| 15.92 | 14.21| 4.285| 1.010| 10.85| 12.48
;;; LMI/Tyson 15-Aug-84 1920
Timing 1 Timing 2
Puzzle 41.9 (0.5) 40.1 (.383)
;;; LMI/Carrette 9-4-84
Test MacroCompiled Microcompiled
PUZZLE 32.6
;;; s-1
∂17-Jul-84 0156 EJG New S-1 PUZZLE time
With the new CODEGEN special lookup code improvement for global variables,
PUZZLE takes 1.829 seconds. (Interestingly enough, if an extra LET binding
is added to make three specials non-global, it takes 6.604 seconds!)
;;; PSL-3081
| CRAY | BPS 400K bytes| BPS 150K | BPS 150K
Benchmark | PSL 3.2| HEAP 800K bytes| HEAP 1510K | HEAP 1510K
---------------------------------------------------------------------------
Puzzle | 1.007 | 1.453 | 1.476 | 1.500
;;; 3600 Sept 12, 1984
Real, no IFU Real, IFU Ratio CPU, no IFU CPU, IFU Ratio
Puzzle 13.94 11.10 1.26 13.94 11.10 1.26